The present invention relates to the field of memory-programmable controllers of the type having cyclically traversed user control programs for controlling peripheral processes. In particular, the present invention relates to memory programmable conotrollers of the type including a processor for executing commands from the control program and from an operating system program, a user program memory wherein the control program is stored, an operating system memory wherein the operating system program is stored, and a data memory wherein process images of the process under control are stored in the form of a bit-wide data.
Memory-programmable controllers of the type mentioned above are described, for instance, in European Pat. No. 10170 and U.S. Pats. Nos. 3,921,146 and 3,942,158. Further details may also be found in the journal Siemens Energietechnik 1979, No. 2, pages 43 to 47, or No. 4, pages 136 to 139.
In these memory programmable controllers, the process signals are processed by appropriately designed microprocessor systems. It is characteristic of these controllers that they do not directly process the actual signals of the peripheral process being controlled, but rather process the internal binding process images stored in a data memory. See, for instance, European Pat. No. 10170 and U.S. Pat. Nos. 3,921,146 and 3,942,158.
In controllers of this type, a user-control program is stored in a user accessible program memory and directs the course of the process under control. The user control program includes both word commands, i.e., commands directed to the processing of words, and, binary interlinking commands, which are directed to performing the logical interlinking operations on the process images stored in a data memory. Before the actual interlinking according to the user control program is made, the state of all input information from the controlled process is first always stored in the internal data memory. Likewise, the output signals obtained from the interlinking are not read out to control the process directly but are first also stored in the internal data memory. All output signals are then read out at the end of the control program from the internal data memory to control the process.
It is achieved by this method that during the operation of the actual control program, the input data to be processed always have defined, fixed values, and no intermediate values of the output data are passed on to the peripheral process being controlled.
The purpose of the sytem is therefore to read in the process images of the inputs, to execute the control program and to read out the process images of the outputs. In the control program itself, the process signals are interlinked with the process images and, depending on the input and output signals and the programming, output signals, i.e., the signals controlling the process, are formed.
Since every signal from and to the process can electrically assume two states (current flows or does not flow), a bit in the process image with the states 0 and 1 corresponds to each signal of the controlled process. In the control program itself, single bits of the process image are therefore handled by the processor according to the control problem in the process to be automated. The user can adapt the system at any time to changing control problems by a corresponding change of the control program.
In the course of steady further development and in the growing spectrum of applications of microprocessor technology, these memory-programmable controllers are also increasingly used at the lower levels of automation and process signal technology, in which contactor type controllers played a dominant role heretofore. The user of contactor type controllers is accustomed to simulating, or "fixing" temporarily certain process signals for testing purposes without general changes of the control program, i.e., in this case the wiring of the contactors and without intervention into the process itself, for instance, in order to obtain information regarding the behavior of the controller or the process changed thereby.
The so-called "forcing" or "fixing" of process signals in this manner to a fixed value, as is done with contactor type controllers, should also be possible in memory-programmable controllers of the type mentioned above. The fixing or forcing of an input signal from the controlled process, or of an output signal to the process to a closely determined state, should therefore also take place entirely independently of the true state of the input signal in the process itself or of the output signal.
Since output signals as well as input signals are interlinked further, provision must also be made that in further interlinking of output signals, the fixed state is used and not the state which would have resulted, for instance, from prior interlinking.
It should therefore be possible to simulate certain input and output signals of the controller without intervention into the process itself, or to simulate certain output signals for the process itself. These signals must not be changeable by the control program nor by the process. At the same time, the input or output signals which are not fixed must be processed normally as before and it should also be possible to interlink them logically with the fixed input or output signals.
The possibility is thereby provided to the user of the controller to set, as in contactor type controllers, any desired signal to values desired by the user for any desired period of time. For instance, a switch which is in actuality closed in the process is to be treated by the controller as if it were open, or a valve that would be opened by the controller is to remain closed for a definite period of time.